A backup operation associated with a computer system may require a great deal of resources, both in terms of processor resources and memory resources. In a computerized system hosting one or more virtual machines, where one or more of the virtual machines is backed up, the requirements to perform backup operations on the virtual machines may increase the processor and memory requirements. Devoting processor and memory resources to the simultaneous backup of one or more virtual machines may remove resources from other, competing, virtual machines.
Moreover, during the time that a virtual machine is being backed up, it may not be available, or may have limited availability to perform the operations for which it was instantiated. Virtual machines may operate according to a pre-determined schedule. For example, a virtual machine may be instantiated to control a database linking operation for a product database after new products are added. New products may only be added to the exemplary database at 5 PM every Tuesday evening, so the exemplary virtual machine may require a relatively greater amount of processor and memory resources between 5 PM and 7 PM on Tuesdays, and may require a relatively smaller amount of processor and memory resources during the rest of the week, or may even require only a nominal amount of resources during the “non-peak” time.
Virtual machine backup operations may be scheduled by hand, so that, for example, a system administrator may note when specific virtual machines on a system are in a “non-peak” time, and may specify backup operations to take place when all or most of the virtual machines are in a “non-peak” time. However, virtual machines may be migrated from one physical system to another physical system in order to balance the processor and/or memory requirements, to upgrade physical systems, or for other reasons. Hand-scheduled backup operations for individual virtual machines moved onto a new physical system may occur at times of increased activity of the moved virtual machines or virtual machines already existing on that system. Alternatively, new virtual machines may be created on a physical system, which may conflict with the backup schedules of existing virtual machines. This is a problem because the movement of virtual machines, while expedient from an efficiency standpoint, creates problems in creating an efficient backup schedule.
In view of the foregoing, it may be understood that there are significant problems and shortcomings associated with current backup technologies.